package com.weimob.cloud.api.crm.req;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * 微盟获取会员卡列表请求参数
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class WeimobCrmMemberCardGetListReq implements Serializable {

    /**
     * 待查询会员卡信息的客户 wid
     */
    @JsonProperty("wid")
    private Integer wid;

    /**
     * 待查询会员卡采用的会员方案 ID。根据会员卡号查询时，会员方案 ID 必填。
     */
    @JsonProperty("membershipPlanId")
    private Integer membershipPlanId;

    /**
     * 待查询的会员卡号列表，每组最多 10 个。
     */
    @JsonProperty("customCardNoList")
    private List<String> customCardNoList;

    /**
     * 查询类型
     * 枚举值
     * 1：查询会员卡基本信息；2：查询会员身份信息、会员等级 ID；3：会员成长值；4：查询会员等级名称（必须与 2-查询会员等级 ID 一起传入）; 5：查询会员来源、渠道信息；6：查询会员卡名称、卡类型。
     * 注意
     * ▪ 不传此参数，则默认查询 [1,2,3,4,5] 五种类型；
     * ▪ 如需指定查询类型时，1 和 2 至少传一项。
     */
    @JsonProperty("queryType")
    private List<Integer> queryType;
}
